Unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
In order to transmit digital video frames over band-limited transmission channels, or to store and retrieve digital video frames using digital storage equipment, compression techniques are employed to reduce data bandwidth while minimizing loss in data quality. For example, an MPEG-2 encoder accepts an input sequence of raw video frames and outputs a sequence of encoded video frames. A control parameter of the encoder, traditionally called Quantization Parameter (QP), controls the “quality” of the encoded output, that is, how good the output looks to the human eye.
By convention in MPEG-2, a lower value of QP produces output of higher quality. QP also affects the size of the output, that is, the number of bits needed to encode the output frame. However, this influence is only indirect because the size of the output frame is a function both of QP and of the “complexity” of the input frames. Loosely speaking, for a given level of quality, a more complex video sequence requires more bits. Similarly, for a given complexity, a higher quality requires more bits.
Although the encoder is parameterized by QP, many applications impose a constraint not on the quality, but on the number of output bits produced by the encoder. For example, if the encoded video frames are sent through a network that can transmit N bits per second, the encoder must produce at most N bits per second. The relation between QP and output size is indirect, since the number of output bits is also affected by the complexity of the input sequence. Therefore, setting the QP that achieves the desired output rate is generally difficult.